<?php 
/* ----------------------------------------------------------------------- */
/* Funcion para mostrar los Registros									   */
/* ----------------------------------------------------------------------- */

/*	function MostrarRegistros($arreglo_datos, $tcpdf){

		$tcpdf->writeHTMLCell($w=0, $h=0, $x='', $y='', '<br/>', '', $ln=1, $fill=0, $reseth=true, $align='', $autopadding=true);

		foreach($arreglo_datos AS $registro){
	
			if(!empty($registro['detalle'])){
				$txt_registro = '
				<p>
				<table width="100%">
					<tr>
						<td width="20%">
							<b>'.$registro['profesional'].'</b><br/>
							'.date('d/m/Y H:i', strtotime($registro['fecha'])).'
						</td>
						<td width="80%">';

				if($registro['modelo'] == "Ficha"){
					$txt_registro .= '<strong>'.$registro['actividad'].'</strong><br>';
				}

				$txt_registro .= nl2br(trim($registro['detalle'])).'</td>
					</tr>
				</table>
				</p>
				';
				$tcpdf->writeHTMLCell($w=0, $h=0, $x='', $y='', $txt_registro, '', $ln=1, $fill=0, $reseth=true, $align='', $autopadding=true);
			}
		}
	}
*/

	$logo = $this->Session->read('Client.logo');
	if(!empty($logo)){ 
		$logo = 'http://www.epicrisisweb.com/uploads/'.$logo;	
		$extension_logo = strtoupper(substr($logo,strrpos($logo, ".")+1));
	}
	
/* ----------------------------------------------------------------------- */

App::import('Vendor','xtcpdf');  
$tcpdf = new XTCPDF(); 
$textfont = 'dejavusans'; // looks better, finer, and more condensed than 'dejavusans' 

//print_r($evoluciones);

$tcpdf->SetAuthor("Epicrisis - http://www.epicrisisweb.com"); 
//$tcpdf->SetAutoPageBreak( false ); 
$tcpdf->SetAutoPageBreak(true, 20); 
$tcpdf->SetTopMargin(20);
$tcpdf->setFontSubsetting(false);
$tcpdf->setHeaderFont(array($textfont,'',13)); 
$tcpdf->xheadercolor = array(224,224,224); 
$tcpdf->xheadertext = 'Epicrisis: Historia Clínica de '.$person['Person']['full_name']; 
$tcpdf->xfootertext = 'Copyright © %d - HCE S.A. - Epicrisis (www.epicrisisweb.com). Todos los derechos reservados.<br/>Fecha de Impresión: '.date("d/m/Y").' - Es Copia de la Historia Clínica'; 

// Agrego la 1er Pagina
$tcpdf->AddPage('P', 'A4');
if(!empty($logo)){

	// set image scale factor
	$tcpdf->setImageScale(PDF_IMAGE_SCALE_RATIO);

	$tcpdf->Image($logo, 170, 5, '', '', $extension_logo, '', '', true, 150, '', false, false, 0, false, false, true);
}

// Now you position and print your page content 
$tcpdf->SetTextColor(0, 0, 0); 
$tcpdf->SetFont($textfont,'R',10); 

$txt_paciente = '
	<h2>'.$person['Person']['full_name'].'</h2>
	<b>Fec. Nacimiento</b>: '.date('d/m/Y', strtotime($person['Person']['fecha_nacimiento'])).'&nbsp;&nbsp;&nbsp;
	<b>Edad</b>: '.$edad['edad'].' '.$edad['unidad_edad'].'&nbsp;&nbsp;&nbsp;
	<b>Sexo</b>: '.$person['Sex']['name'].'&nbsp;&nbsp;&nbsp;
	<b>Grupo</b> Sanguineo: '.$person['Gruposanguineo']['name'].'<br/>
	<b>Documento</b>: '.$person['Typodocument']['name'].' '.$person['Person']['nro_documento'].'&nbsp;&nbsp;&nbsp;
	<b>Teléfono</b>: '.$person['Person']['telefono'].'<br/><br/>	
';

// print a block of text using Write()
$tcpdf->writeHTMLCell($w=0, $h=0, $x='', $y=20, $txt_paciente, $border=0, $ln=1, $fill=0, $reseth=true, $align='', $autopadding=true);

/* ------------------------------------------------------------------------------ */
/* Muestro el Historial												  			  */
/* ------------------------------------------------------------------------------ */

	$fecha       = '';
	$profesional = '';
	$forzar_mostrar_profesional = false;
	$forzar_mostrar_actividad = false;
	$actividad_anterior = "";

	$client_tz = new DateTimeZone($_SESSION['Client']['timezone']);

	$html_muro = '<table>';
	$arreglo_firmas = array();	

	foreach ($historial_completo as $key => $registro) {

		// Cambio la fecha segun el TimeZone del Cliente
		$date = new DateTime($registro['fecha']);
		$date->setTimezone($client_tz);
		$reg_fecha =  $date->format('d-m-Y');		
		$reg_fecha_mostrar =  $date->format('d-m-Y');		


		// Si es un registro nuevo para la fecha, muestro la fecha
		if ($fecha != $reg_fecha) {
			$forzar_mostrar_profesional = true;
			$forzar_mostrar_actividad = true;
			
			// Comienzo de detalle_muro
			$html_muro .= '
		    <tr> 
		      <td colspan="2"><br><br>'.$reg_fecha_mostrar.'</td>
		    </tr>	
			';

		}
		
		// Muestro el Nombre del Profesional
		if ($profesional != $registro['profesional'] OR $forzar_mostrar_profesional) {
			$forzar_mostrar_profesional = false;

			$html_muro .= '
		    <tr> 
		      <td colspan="2"><h4>'.$registro['profesional'];


		      if(!empty($registro['matricula_profesional'])){
				$html_muro .= ' - MAT. '.$registro['matricula_profesional'];
		      }

			$html_muro .= '</h4>';
			$html_muro .= '</td>
		    </tr>	
			';

		}
		
		if (!empty($registro['detalle'])) { 

			$html_muro .= '<tr>';
			if($actividad_anterior != $registro['actividad']  OR $forzar_mostrar_actividad ){
				$forzar_mostrar_actividad = false;
				$html_muro .= '<td height="20" width="30%">'.$registro['actividad'].'</td>';
			}else{
				$html_muro .= '<td height="20" width="30%">&nbsp;</td>';
			}

			$html_muro .= '<td height="20">'.$registro['detalle'].'</td>';
			$html_muro .= '</tr>';
		} 


		// Guardo los datos del Registro Anterior
		$fecha = $reg_fecha;
		$profesional = $registro['profesional'];
		$actividad_anterior = $registro['actividad'];



		// Guardo todas las firmas que existen
		$firma_profesional = $registro['firma_profesional'];
		if(!empty($firma_profesional)){ 
			$firma_profesional = 'http://www.epicrisisweb.com/uploads/'.$firma_profesional;	
			$arreglo_firmas[$firma_profesional] = $firma_profesional;
		}
	}

	$html_muro .= '</table>';

	$txt_registro = '<h2><b>Cronología</b></h2>';
	$tcpdf->writeHTMLCell($w=0, $h=0, $x='', $y='', $txt_registro, 'B', $ln=1, $fill=0, $reseth=true, $align='', $autopadding=true);
	$tcpdf->writeHTMLCell($w=0, $h=0, $x='', $y='', $html_muro, '', $ln=1, $fill=0, $reseth=true, $align='', $autopadding=true);


	// Muestro al PIE las firmas de todos los profesionales involucrados
	if(!empty($arreglo_firmas)){
		$html_firmas = '<br/><br/><br/>';
		foreach ($arreglo_firmas AS $firma) {
			$html_firmas .= '<img src="'.$firma.'" height="70" hspace="20">';
		}
		$tcpdf->writeHTMLCell($w=0, $h=0, $x='', $y='', $html_firmas, '', $ln=1, $fill=0, $reseth=true, 'C', $autopadding=true);		
	}




/* ------------------------------------------------------------------------------ */
/* Muestro las Evoluciones (obsoleto)											*/
/* ------------------------------------------------------------------------------ */

	if(!empty($evoluciones)){

		// Agrego la Pagina
		//$tcpdf->AddPage('P', 'A4');

		$txt_registro = '<h2><b>Evoluciones del Paciente</b></h2>';
		$tcpdf->writeHTMLCell($w=0, $h=0, $x='', $y='', $txt_registro, 'B', $ln=1, $fill=0, $reseth=true, $align='', $autopadding=true);

		MostrarRegistros($evoluciones, $tcpdf);
	}

/* ------------------------------------------------------------------------------ */
/* Muestro los Problemas (obsoleto)											*/
/* ------------------------------------------------------------------------------ */

	if(!empty($problemas)){

		// Agrego la Pagina
		//$tcpdf->AddPage('P', 'A4');

		$txt_registro = '<h2><b>Problemas del Paciente</b></h2>';
		$tcpdf->writeHTMLCell($w=0, $h=0, $x='', $y='', $txt_registro, 'B', $ln=1, $fill=0, $reseth=true, $align='', $autopadding=true);

		MostrarRegistros($problemas, $tcpdf);
	}

/* ------------------------------------------------------------------------------ */
/* Muestro los signos (obsoleto)											*/
/* ------------------------------------------------------------------------------ */

	if(!empty($signos)){

		// Agrego la Pagina
		//$tcpdf->AddPage('P', 'A4');

		$txt_registro = '<h2><b>Signos Vitales del Paciente</b></h2>';
		$tcpdf->writeHTMLCell($w=0, $h=0, $x='', $y='', $txt_registro, 'B', $ln=1, $fill=0, $reseth=true, $align='', $autopadding=true);

		MostrarRegistros($signos, $tcpdf);
	}

/* ------------------------------------------------------------------------------ */
/* Muestro los practicas (obsoleto)											*/
/* ------------------------------------------------------------------------------ */

	if(!empty($practicas)){

		// Agrego la Pagina
		//$tcpdf->AddPage('P', 'A4');

		$txt_registro = '<h2><b>Prácticas del Paciente</b></h2>';
		$tcpdf->writeHTMLCell($w=0, $h=0, $x='', $y='', $txt_registro, 'B', $ln=1, $fill=0, $reseth=true, $align='', $autopadding=true);

		MostrarRegistros($practicas, $tcpdf);
	}

/* ------------------------------------------------------------------------------ */
/* Muestro los resultados (obsoleto)											*/
/* ------------------------------------------------------------------------------ */

	if(!empty($resultados)){

		// Agrego la Pagina
		//$tcpdf->AddPage('P', 'A4');

		$txt_registro = '<h2><b>Resultados del Paciente</b></h2>';
		$tcpdf->writeHTMLCell($w=0, $h=0, $x='', $y='', $txt_registro, 'B', $ln=1, $fill=0, $reseth=true, $align='', $autopadding=true);

		MostrarRegistros($resultados, $tcpdf);
	}

/* ------------------------------------------------------------------------------ */
/* Muestro los vademecum (obsoleto)											*/
/* ------------------------------------------------------------------------------ */

	if(!empty($vademecum)){

		// Agrego la Pagina
		//$tcpdf->AddPage('P', 'A4');

		$txt_registro = '<h2><b>Medicaciones del Paciente</b></h2>';
		$tcpdf->writeHTMLCell($w=0, $h=0, $x='', $y='', $txt_registro, 'B', $ln=1, $fill=0, $reseth=true, $align='', $autopadding=true);

		MostrarRegistros($vademecum, $tcpdf);
	}

/* ------------------------------------------------------------------------------ */
/* Muestro los turnos (obsoleto)											*/
/* ------------------------------------------------------------------------------ */

	if(!empty($turnos)){

		// Agrego la Pagina
		//$tcpdf->AddPage('P', 'A4');

		$txt_registro = '<h2><b>Turnos del Paciente</b></h2>';
		$tcpdf->writeHTMLCell($w=0, $h=0, $x='', $y='', $txt_registro, 'B', $ln=1, $fill=0, $reseth=true, $align='', $autopadding=true);

		MostrarRegistros($turnos, $tcpdf);
	}

/* ------------------------------------------------------------------------------ */
/* Muestro los recomendaciones (obsoleto)	        							*/
/* ------------------------------------------------------------------------------ */

	if(!empty($recomendaciones)){

		// Agrego la Pagina
		//$tcpdf->AddPage('P', 'A4');

		$txt_registro = '<h2><b>Recomendaciones del Paciente</b></h2>';
		$tcpdf->writeHTMLCell($w=0, $h=0, $x='', $y='', $txt_registro, 'B', $ln=1, $fill=0, $reseth=true, $align='', $autopadding=true);

		MostrarRegistros($recomendaciones, $tcpdf);
	}



/* ------------------------------------------------------------------------------ */
/* Muestro los fichas (obsoleto)   	        										 */
/* ------------------------------------------------------------------------------ */

	if(!empty($fichas)){

		// Agrego la Pagina
		//$tcpdf->AddPage('P', 'A4');

		$txt_registro = '<h2><b>Fichas</b></h2>';
		$tcpdf->writeHTMLCell($w=0, $h=0, $x='', $y='', $txt_registro, 'B', $ln=1, $fill=0, $reseth=true, $align='', $autopadding=true);

		MostrarRegistros($fichas, $tcpdf);
	}




/* ------------------------------------------------------------------------------ */

// reset pointer to the last page
$tcpdf->lastPage();

//echo $tcpdf->Output('Epicrisis_'.$person['Person']['full_name'].'.pdf', 'D'); 
echo $tcpdf->Output('Epicrisis_'.$person['Person']['full_name'].'.pdf', 'D'); 
?>